home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / cmds / gdb.new / gdb-3.98 / include / a.out.sun4.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-08-01  |  1.0 KB  |  26 lines

  1. /* SPARC-specific values for a.out files */
  2.  
  3. #define PAGE_SIZE    0x2000        /* 8K.  aka NBPG in <sys/param.h> */
  4. /* Note that some SPARCs have 4K pages, some 8K, some others.  */
  5. #define SEGMENT_SIZE    PAGE_SIZE
  6. #define TEXT_START_ADDR    PAGE_SIZE    /* Location 0 is not accessible */
  7.  
  8. /* Non-default definitions of the accessor macros... */
  9.  
  10. /* Offset in a.out file of the text section.  For ZMAGIC, the text section
  11.    actually includes the a.out header.  */
  12.  
  13. #define N_TXTOFF(x)    ( (N_MAGIC((x)) == ZMAGIC) ? 0 : EXEC_BYTES_SIZE)
  14.  
  15. /* Virtual Address of text segment from the a.out file.  For OMAGIC,
  16.    (almost always "unlinked .o's" these days), should be zero.
  17.    Sun added a kludge so that shared libraries linked ZMAGIC get
  18.    an address of zero if a_entry (!!!) is lower than the otherwise
  19.    expected text address.  These kludges have gotta go!
  20.    For linked files, should reflect reality if we know it.  */
  21.  
  22. #define N_TXTADDR(x) \
  23.     (N_MAGIC(x)==OMAGIC? 0 \
  24.      : (N_MAGIC(x) == ZMAGIC && (x).a_entry < TEXT_START_ADDR)? 0 \
  25.      : TEXT_START_ADDR)
  26.